The present invention relates to a method and system for creating capacity consumption profiles in a client/server system in order to more accurately predict the system capacity requirement for selected software applications.
Recently, there has been a proliferation of enterprise resource planning (ERP), customer relationship management (CRM) and supply chain management (SCM) solutions including hardware and software. After installation, users frequently find that their computer equipment is insufficient to meet their data processing need when running these software solutions. One problem is that the software products that provide these business solutions do not create or capture the required metrics to enable capacity consumption profiling. Therefore, very little definitive information exists to forecast computer system requirements.
To address this lack of quality metrics for these computer solutions, many software developers have created products to assist in the management of these network based computer solutions. Currently available software products still are not minimally invasive, they cannot determine whether data is missing through usage pattern context, and they do not have the means to statistically validate and correct data that may be incorrect, missing, or highly variable.
A context aware process is one that is aware of the activities that are taking place and makes decisions based on that knowledge. It is common in this environment for some of the data elements to be unavailable. This causes known software management products to report up to 40% of the system activity as xe2x80x9cunknown.xe2x80x9d Various system management products attempt to solve this problem by including software to create the required data. However, these solutions typically are not successful because the developer cannot know or predict the purpose of additional features or code added by the end user. Further, there are many support functions in large client/server solutions which perform different functions depending on how they are invoked.
Statistical validation and correction of data as a process is self-defining. Many software management products perform statistical analysis by using statistical processes to identify problems, variations, trends, and patterns. However, current software management products do not use statistical analysis to correct incorrectly reported or missing data. To correct or add data through statistical analysis requires the use of several associated data elements in determining the missing or incorrect data elements. These analysis techniques vary depending on the types of data elements available compared to those being derived and the fundamental underlying patterns and relationships between and among the various data elements.
One know method of system analysis and management is described in U.S. Pat. No. 5,961,598 to Sime, entitled xe2x80x9cSystem and Method for Internet Gateway Performance Charting,xe2x80x9d which provides a method for capturing and reporting usage statistics of network gateways, for example, the connection between a corporate intranet and the public internet. The disclosed method does not attempt to profile the collected data, identify context, create usage profiles, or recover any missing or erroneous data.
U.S. Pat. No. 6,018,619 to Allard et al., entitled xe2x80x9cMethod, System and Apparatus for Client-Side Usage Tracking of Information Server Systems,xe2x80x9d discloses a method of transporting the statistics, referred to in the patent as stoical data, that are accumulated during a network connection while minimizing the loss of that data. As in the ""598 referenced above, the disclosed system and method does not profile the patterns of consumption of the data and does not include context awareness or additional statistical analysis for consumption profiling.
PCT Application No. WO 99/46712 of Goldband et al., entitled xe2x80x9cInteractivfe Customer Support for Computer Programs Using Network Connection of User Machine,xe2x80x9d discloses a system which monitors and collects computer usage data for the purpose of providing interactive software support by means of a software agent installed in a user""s machine. The context awareness for the disclosed system does not include means for resolving an unknown state unlike the one currently being submitted by the agent.
There is thus a need for a software analysis and management system and method which is minimally invasive to the system being managed, resolves missing activity information and validates and corrects the analysis data.
The present invention addresses the above-mentioned problems by providing a system and method for identifying capacity consumption profiles in a client/server computer system. The profiles may be used for improving the ability to forecast those computer requirements necessary to accommodate a user""s future data processing requirements. In the method according to the present invention, selected available statistics and accounting information are consolidated by a context aware process followed by statistical data analysis. Context awareness is employed to associate activities on a computer system with profiles, which are then correlated with resource consumption data to create a defined pattern of computer resource consumption associatede therewith. This is followed by statistical analysis and reduction of the intermediate by a context sensitive reduction process.
In one embodiment, two sets of profiles are defined. One set of profiles categorizes business functions such as financial, materials managements, sales and distribution. The second set of profiles defines activities in terms of reports, user written programs, vendor supplied software and batch processes, as contrasted with interactive online activities supporting a user at a terminal. Each of these sets of profiles are populated with observed activities and reported consumption. This data is then analyzed using a least squares fit in order to correlate it with actual consumption. The standard deviation from this fit is then used to identify errant points. Finally, consumption is attributed to profiles for which no reported consumption exists, only consumption estimated by a similar least squares analysis against reported activities. Consumption metrics by profile may be provided in graphical or other selected format.
It is therefore an object of the present invention to provide a system and method for profiling the computational activity patterns and usage of computer systems.
It is also an object of this invention to provide a profiling system and method capable of handling and correlate input data from several sources, thereby providing otherwise unavailable resource capacity usage data.
It is another object of this invention to attribute computer activities with an applicable profile when the information normally required for that activity identification is missing.
It is yet a further object of this invention to identify errant resource usage data points acquired from available sources ant to exclude or correct such errant data points.
Still another object of this invention to provide a minimally invasive resource consumption profiling method and system, thereby reducing the impact of capturing available data and the potential contamination of the results.